Complexity and Resource Bound Analysis of Imperative Programs Using Difference Constraints
نویسندگان
چکیده
منابع مشابه
Bound Analysis of Imperative Programs with the Size-Change Abstraction
The size-change abstraction (SCA) is an important program abstraction for termination analysis, which has been successfully imple-ion for termination analysis, which has been successfully implemented in many tools for functional and logic programs. In this paper, we demonstrate that SCA is also a highly effective abstract domain for the bound analysis of imperative programs. We have implemented...
متن کاملAnalysis of Imperative XML Programs
The widespread adoption of XML has led to programming languages that support XML as a first class construct. In this paper, we present a method for analyzing and optimizing imperative XML processing programs. In particular, we present a program analysis, based on a flow-sensitive type system, for detecting both redundant computations and redundant traversals in such programs. The analysis handl...
متن کاملAnalysis of Imperative Programs through Analysis of Constraint Logic Programs
In this paper a method is proposed for carrying out analysis of imperative programs. We achieve this by writing down the language semantics as a declarative program (a constraint logic program, in the approach shown here). We propose an e ective style of writing operational semantics suitable for analysis which we call one-state small-step semantics. Through controlled partial evaluation we are...
متن کاملLower-bound Time-complexity Analysis of Logic Programs
The paper proposes a technique for inferring conditions on goals that, when satisfied, ensure that a goal is sufficiently coarse-grained to warrant parallel evaluation. The method is powerful enough to reason about divide-and-conquerprograms, and in the case of quicksort, for instance, can infer that a quicksort goal has a time complexity that exceeds 64 resolution steps (a threshold for spawni...
متن کاملTermination Analysis of Imperative Programs Using Bitvector Arithmetic
Currently, nearly all methods for proving termination of imperative programs apply an unsound and incomplete abstraction by treating bitvectors and bitvector arithmetic as (unbounded) integers and integer arithmetic, respectively. This abstraction ignores the wraparound behavior caused by underand overflows in bitvector arithmetic operations. This is particularly problematic in the termination ...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
ژورنال
عنوان ژورنال: Journal of Automated Reasoning
سال: 2017
ISSN: 0168-7433,1573-0670
DOI: 10.1007/s10817-016-9402-4